<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <title>Document</title>
</head>

<body>
    <script>
        /*
            以下是某班级一次考试的成绩表。请计算每个学生总成绩，并按总成绩排名。统计各单科成绩第一名，输出其成绩与学号
            学号    语文    数学    英语	总成绩	备注
            1       105     62      118		
            2       89      78	    120		
            3       86      64	    80		
            4       78      99	    91		
            5       107.5   97	    70		
            6       112     61	    92		
            7       101     79	    104		
            8       71      72	    105		
            9       56      68	    61		
            10      98      83	    77	
        */

        var students = [{
                id: 1,
                chinese: 105,
                math: 62,
                english: 118
            },
            {
                id: 2,
                chinese: 70,
                math: 142,
                english: 65
            },
            {
                id: 3,
                chinese: 145,
                math: 20,
                english: 130
            },
            {
                id: 4,
                chinese: 100,
                math: 100,
                english: 100
            }
        ];
        // 1、求总成绩
        for (var i = 0; i < students.length; i++) {
            students[i].total = students[i].chinese + students[i].math + students[i].english;
        }
        // 2、按照总成绩排名
        // for (var j = 0; j < students.length - 1; j++) {
        //     for (var i = 0; i < students.length - 1 ; i++) {
        //         if (students[i].total < students[i + 1].total) {
        //             var tmp = students[i];
        //             students[i] = students[i + 1];
        //             students[i + 1] = tmp;
        //         }
        //     }
        // }
        students.sort(function (a, b) {
            return a.total - b.total;
        })
        console.log(students);
        // 3、统计各单科成绩第一名
        // 假设单科第一名都是 第一个元素
        var chineseTop = mathTop = englishTop = students[0];
        for (var k = 1; k < students.length; k++) {
            if(students[k].chinese >chineseTop.chinese){
                chineseTop = students[k];
            }
            if(students[k].math >mathTop.math){
                mathTop = students[k];
            }
            if(students[k].english >englishTop.english){
                englishTop = students[k];
            }
        }
        console.log(chineseTop,mathTop,englishTop)
    </script>
</body>

</html>